Skip to content

Conversation

@nielspardon
Copy link
Member

I noticed there are multiple gaps in the serialization and deserialization of `AdvancedExtension which I'm trying to close with this PR:

  • in PlanProtoConverter pass ExtensionProtoConverter to RelProtoConverter
  • in ProtoPlanConverter pass ProtoExtensionConverter to ProtoRelConverter
  • move/add HasExtension interface to AbstractDdlRel, AbstractWriteRel
  • add missing serde logic for relations to RelProtoConverter, ProtoRelConverter
  • adds a test that confirms the extension converters are passed through from plan converters to rel converters

@nielspardon
Copy link
Member Author

nielspardon commented Oct 24, 2025

I'm working on adding more tests to verify the serialization/deserialization for each relation type

@nielspardon nielspardon marked this pull request as draft October 24, 2025 07:35
@nielspardon nielspardon marked this pull request as ready for review October 24, 2025 09:55
@nielspardon
Copy link
Member Author

I'm working on adding more tests to verify the serialization/deserialization for each relation type

this is done. ready for review

Signed-off-by: Niels Pardon <[email protected]>
Comment on lines +190 to +191
protected Rel newWrite(final WriteRel rel) {
final WriteRel.WriteTypeCase relType = rel.getWriteTypeCase();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Out of curiosity, why did you add the final modifier to the Write/Update/DDL relations, but not all the other relations that use this same code pattern?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I mainly did it for the code I thought I touched to not introduce too many unrelated changes

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see what you mean, let me update the PR to be a little more consistent

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be more consistent now

@andrew-coleman andrew-coleman merged commit 71a742c into substrait-io:main Oct 27, 2025
12 checks passed
vbarua pushed a commit that referenced this pull request Oct 28, 2025
* fix(core): close AdvancedExtension serde gaps

Signed-off-by: Niels Pardon <[email protected]>

* fix: add test cases

Signed-off-by: Niels Pardon <[email protected]>

* fix: address comments

Signed-off-by: Niels Pardon <[email protected]>

* fix: more consistent final declaration in changed code

Signed-off-by: Niels Pardon <[email protected]>

---------

Signed-off-by: Niels Pardon <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants